home *** CD-ROM | disk | FTP | other *** search
-
-
-
- SED User Commands SED
-
-
-
- NNAAMMEE
- sed - stream editor
-
- SSYYNNOOPPSSIISS
- sseedd [ --nn ] [ --ee script ] [ --ff sfile ] [ file ] ...
-
- DDEESSCCRRIIPPTTIIOONN
- _S_e_d copies the named _f_i_l_e_s (standard input default) to the
- standard output, edited according to a script of commands.
- The --ff option causes the script to be taken from file _s_f_i_l_e;
- these options accumulate. If there is just one --ee option
- and no --ff's, the flag --ee may be omitted. The --nn option
- suppresses the default output.
-
- A script consists of editing commands, one per line, of the
- following form:
-
- [address [, address] ] function [arguments]
-
- In normal operation _s_e_d cyclically copies a line of input
- into a _p_a_t_t_e_r_n _s_p_a_c_e (unless there is something left after a
- `D' command), applies in sequence all commands whose
- _a_d_d_r_e_s_s_e_s select that pattern space, and at the end of the
- script copies the pattern space to the standard output
- (except under --nn) and deletes the pattern space.
-
- An _a_d_d_r_e_s_s is either a decimal number that counts input
- lines cumulatively across files, a `$' that addresses the
- last line of input, or a context address, `/regular expres-
- sion/', in the style of _e_d(1) modified thus:
-
- The escape sequence `\n' matches a newline embedded in
- the pattern space.
-
- A command line with no addresses selects every pattern
- space.
-
- A command line with one address selects each pattern space
- that matches the address.
-
- A command line with two addresses selects the inclusive
- range from the first pattern space that matches the first
- address through the next pattern space that matches the
- second. (If the second address is a number less than or
- equal to the line number first selected, only one line is
- selected.) Thereafter the process is repeated, looking again
- for the first address.
-
- Editing commands can be applied only to non-selected pattern
- spaces by use of the negation function `!' (below).
-
- In the following list of functions the maximum number of
-
-
-
- Sprite v1.0 September 30, 1987 1
-
-
-
-
-
-
- SED User Commands SED
-
-
-
- permissible addresses for each function is indicated in
- parentheses.
-
- An argument denoted _t_e_x_t consists of one or more lines, all
- but the last of which end with `\' to hide the newline.
- Backslashes in text are treated like backslashes in the
- replacement string of an `s' command, and may be used to
- protect initial blanks and tabs against the stripping that
- is done on every script line.
-
- An argument denoted _r_f_i_l_e or _w_f_i_l_e must terminate the com-
- mand line and must be preceded by exactly one blank. Each
- _w_f_i_l_e is created before processing begins. There can be at
- most 10 distinct _w_f_i_l_e arguments.
-
- (1)a\
- _t_e_x_t
- Append. Place _t_e_x_t on the output before reading the
- next input line.
-
- (2)b _l_a_b_e_l
- Branch to the `:' command bearing the _l_a_b_e_l. If _l_a_b_e_l
- is empty, branch to the end of the script.
-
- (2)c\
- _t_e_x_t
- Change. Delete the pattern space. With 0 or 1 address
- or at the end of a 2-address range, place _t_e_x_t on the
- output. Start the next cycle.
-
- (2)d Delete the pattern space. Start the next cycle.
-
- (2)D Delete the initial segment of the pattern space through
- the first newline. Start the next cycle.
-
- (2)g Replace the contents of the pattern space by the con-
- tents of the hold space.
-
- (2)G Append the contents of the hold space to the pattern
- space.
-
- (2)h Replace the contents of the hold space by the contents
- of the pattern space.
-
- (2)H Append the contents of the pattern space to the hold
- space.
-
- (1)i\
- _t_e_x_t
- Insert. Place _t_e_x_t on the standard output.
-
- (2)n Copy the pattern space to the standard output. Replace
-
-
-
- Sprite v1.0 September 30, 1987 2
-
-
-
-
-
-
- SED User Commands SED
-
-
-
- the pattern space with the next line of input.
-
- (2)N Append the next line of input to the pattern space with
- an embedded newline. (The current line number
- changes.)
-
- (2)p Print. Copy the pattern space to the standard output.
-
- (2)P Copy the initial segment of the pattern space through
- the first newline to the standard output.
-
- (1)q Quit. Branch to the end of the script. Do not start a
- new cycle.
-
- (2)r _r_f_i_l_e
- Read the contents of _r_f_i_l_e. Place them on the output
- before reading the next input line.
-
- (2)s/_r_e_g_u_l_a_r _e_x_p_r_e_s_s_i_o_n/_r_e_p_l_a_c_e_m_e_n_t/_f_l_a_g_s
- Substitute the _r_e_p_l_a_c_e_m_e_n_t string for instances of the
- _r_e_g_u_l_a_r _e_x_p_r_e_s_s_i_o_n in the pattern space. Any character
- may be used instead of `/'. For a fuller description
- see _e_d(1). _F_l_a_g_s is zero or more of
-
- g Global. Substitute for all nonoverlapping
- instances of the _r_e_g_u_l_a_r _e_x_p_r_e_s_s_i_o_n rather than
- just the first one.
-
- p Print the pattern space if a replacement was made.
-
- w _w_f_i_l_e
- Write. Append the pattern space to _w_f_i_l_e if a
- replacement was made.
-
- (2)t _l_a_b_e_l
- Test. Branch to the `:' command bearing the _l_a_b_e_l if
- any substitutions have been made since the most recent
- reading of an input line or execution of a `t'. If
- _l_a_b_e_l is empty, branch to the end of the script.
-
- (2)w _w_f_i_l_e
- Write. Append the pattern space to _w_f_i_l_e.
-
- (2)x Exchange the contents of the pattern and hold spaces.
-
- (2)y/_s_t_r_i_n_g_1/_s_t_r_i_n_g_2/
- Transform. Replace all occurrences of characters in
- _s_t_r_i_n_g_1 with the corresponding character in _s_t_r_i_n_g_2.
- The lengths of _s_t_r_i_n_g_1 and _s_t_r_i_n_g_2 must be equal.
-
- (2)! _f_u_n_c_t_i_o_n
- Don't. Apply the _f_u_n_c_t_i_o_n (or group, if _f_u_n_c_t_i_o_n is
-
-
-
- Sprite v1.0 September 30, 1987 3
-
-
-
-
-
-
- SED User Commands SED
-
-
-
- `{') only to lines _n_o_t selected by the address(es).
-
- (0): _l_a_b_e_l
- This command does nothing; it bears a _l_a_b_e_l for `b' and
- `t' commands to branch to.
-
- (1)= Place the current line number on the standard output as
- a line.
-
- (2){ Execute the following commands through a matching `}'
- only when the pattern space is selected.
-
- (0) An empty command is ignored.
-
- (0)# If a # appears as the first character on a line of a
- script, then that entire line is treated as a comment,
- with one exception. If the first line of the script
- starts with the characters ``#n'', then the default
- output will be suppressed. The rest of the line after
- ``#n'' will also be ignored. A script file must con-
- tain at least one non-comment line.
-
- SSEEEE AALLSSOO
- ed(1), grep(1), awk(1), lex(1)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Sprite v1.0 September 30, 1987 4
-
-
-
-